home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
001
/
pibt3sp3.arc
/
READCTRL.PAS
< prev
next >
Wrap
Pascal/Delphi Source File
|
1985-07-25
|
3KB
|
62 lines
(*----------------------------------------------------------------------*)
(* Read_Ctrls --- Fix up ctrl key definitions in string *)
(*----------------------------------------------------------------------*)
FUNCTION Read_Ctrls( S : AnyStr ) : AnyStr;
(*----------------------------------------------------------------------*)
(* *)
(* Function: Read_Ctrls *)
(* *)
(* Purpose: Convert control sequences in strings. *)
(* *)
(* Calling Sequence: *)
(* *)
(* Fixed_S := Read_Ctrls( S: AnyStr ) : AnyStr; *)
(* *)
(* S --- the string with potential ctrl seqs to convert *)
(* Fixed_S --- fixed up string *)
(* *)
(* Remarks: *)
(* *)
(* This routine replaces a character sequence of the form *)
(* '^G' -- ascii 94 + ascii 71 -- with the single control *)
(* character ctrl-G -- ascii 07. The actual '^' character *)
(* is the global parameter FK_Ctrl_Mark and can be set with *)
(* a configuration file. *)
(* *)
(*----------------------------------------------------------------------*)
VAR
T: AnyStr;
I: INTEGER;
L: INTEGER;
BEGIN (* Read_Ctrls *)
(* Scan for ctrl markers *)
T := '';
I := 1;
L := LENGTH( S );
WHILE( I <= L ) DO
BEGIN (* Ctrl marker -- convert next char *)
(* to control character *)
IF S[I] = FK_Ctrl_Mark THEN
BEGIN
I := I + 1;
T := T + CHR( ORD( S[I] ) - 64 );
I := I + 1;
END
ELSE
BEGIN (* Regular character -- just copy *)
T := T + S[I];
I := I + 1;
END;
END;
Read_Ctrls := T;
END (* Read_Ctrls *);